-
Notifications
You must be signed in to change notification settings - Fork 298
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove reg_preimage columns in KeccakStark #1279
Remove reg_preimage columns in KeccakStark #1279
Conversation
@npwardberkeley If you have some time, would you mind taking a look at this and letting me know what you think? |
evm/src/keccak/keccak_stark.rs
Outdated
@@ -53,7 +63,7 @@ impl<F: RichField + Extendable<D>, const D: usize> KeccakStark<F, D> { | |||
/// in our lookup arguments, as those are computed after transposing to column-wise form. | |||
fn generate_trace_rows( | |||
&self, | |||
inputs: Vec<[u64; NUM_INPUTS]>, | |||
inputs: Vec<([u64; NUM_INPUTS], usize)>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: rename to inputs_and_timestamps
?
evm/src/keccak/keccak_stark.rs
Outdated
Column::single(reg_step(NUM_ROUNDS - 1)) | ||
} | ||
|
||
pub fn ctl_filter_input<F: Field>() -> Column<F> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: for consistency, I think it should be inputs
and outputs
, and inputs
should come first
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good! Just a few very minor comments
This PR removes the 50
reg_preimage
columns inKeccakStark
, at the cost of:KeccakSpongeStark
),Keccak
's CTLs (so one extra CTL with one lookedKeccak
table and one lookingKeccakSponge
table).